package com.ruoyi.internship.domain;

import java.util.List;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 职位信息对象 bole_position
 * 
 * @author ruoyi
 * @date 2025-03-29
 */
public class BolePosition extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 职位ID */
    private String positionId;

    /** 公司ID */
    @Excel(name = "公司ID")
    private String companyId;

    /** 职位名称 */
    @Excel(name = "职位名称")
    private String title;

    /** 职位类型 */
    @Excel(name = "职位类型")
    private String type;

    /** 工作地点 */
    @Excel(name = "工作地点")
    private String location;

    /** 实习时长 */
    @Excel(name = "实习时长")
    private String duration;

    /** 薪资待遇 */
    @Excel(name = "薪资待遇")
    private String salary;

    /** 核心职责 */
    @Excel(name = "核心职责")
    private String duties;

    /** 任职要求 */
    @Excel(name = "任职要求")
    private String requirements;

    /** 转正率（百分比） */
    @Excel(name = "转正率", readConverterExp = "百=分比")
    private String conversionRate;

    /** 晋升路径 */
    @Excel(name = "晋升路径")
    private String promotionPath;

    /** 删除标志（0代表未删除，1代表已删除） */
    @Excel(name = "删除标志", readConverterExp = "0=代表未删除，1代表已删除")
    private String delFlag;

    /** 职位申请记录信息 */
    private List<BolePostionApplication> bolePostionApplicationList;

    public void setPositionId(String positionId) 
    {
        this.positionId = positionId;
    }

    public String getPositionId() 
    {
        return positionId;
    }
    public void setCompanyId(String companyId) 
    {
        this.companyId = companyId;
    }

    public String getCompanyId() 
    {
        return companyId;
    }
    public void setTitle(String title) 
    {
        this.title = title;
    }

    public String getTitle() 
    {
        return title;
    }
    public void setType(String type) 
    {
        this.type = type;
    }

    public String getType() 
    {
        return type;
    }
    public void setLocation(String location) 
    {
        this.location = location;
    }

    public String getLocation() 
    {
        return location;
    }
    public void setDuration(String duration) 
    {
        this.duration = duration;
    }

    public String getDuration() 
    {
        return duration;
    }
    public void setSalary(String salary) 
    {
        this.salary = salary;
    }

    public String getSalary() 
    {
        return salary;
    }
    public void setDuties(String duties) 
    {
        this.duties = duties;
    }

    public String getDuties() 
    {
        return duties;
    }
    public void setRequirements(String requirements) 
    {
        this.requirements = requirements;
    }

    public String getRequirements() 
    {
        return requirements;
    }
    public void setConversionRate(String conversionRate) 
    {
        this.conversionRate = conversionRate;
    }

    public String getConversionRate() 
    {
        return conversionRate;
    }
    public void setPromotionPath(String promotionPath) 
    {
        this.promotionPath = promotionPath;
    }

    public String getPromotionPath() 
    {
        return promotionPath;
    }
    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }

    public List<BolePostionApplication> getBolePostionApplicationList()
    {
        return bolePostionApplicationList;
    }

    public void setBolePostionApplicationList(List<BolePostionApplication> bolePostionApplicationList)
    {
        this.bolePostionApplicationList = bolePostionApplicationList;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("positionId", getPositionId())
            .append("companyId", getCompanyId())
            .append("title", getTitle())
            .append("type", getType())
            .append("location", getLocation())
            .append("duration", getDuration())
            .append("salary", getSalary())
            .append("duties", getDuties())
            .append("requirements", getRequirements())
            .append("conversionRate", getConversionRate())
            .append("promotionPath", getPromotionPath())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("delFlag", getDelFlag())
            .append("bolePostionApplicationList", getBolePostionApplicationList())
            .toString();
    }
}
